import java.util.ArrayList;
import javax.swing.JOptionPane;

public class replace {

    public static ArrayList<String> dividi(String frase, char letter) {
        frase = frase + letter;
        int num = letter;
        int leng = frase.length();
        int i = 0;
        String par;
        par = "";
        ArrayList<String> parole = new ArrayList<String>();
        while (i < leng) {
            char lettera = frase.charAt(i);
            int lett = lettera;
            if (lett != num) {
                par = par + lettera;
            } else {
                parole.add(par);
                par = "";
            }
            i++;
        }
        return parole;
    }

    public static String replace(String frase, String parola, String replace) {
        ArrayList<String> parole = new ArrayList<String>();
        int i = 0;
        String par;
        int leng;
        int len;
        int lunga;
        char lett;
        String word;
        word = "";
        parole = dividi(frase, ' ');
        while (i < parole.size()) {
            par = parole.get(0);
            parole.remove(0);
            leng = par.length();
            len = replace.length();
            lunga = parola.length();
            if (par.equalsIgnoreCase(parola)) {
                int id = 0;
                while (id < len) {
                    lett = replace.charAt(id);
                    word = word + lett;
                    id++;
                }
                par = word;
                word = "";
            }
            parole.add(par);
            i++;
        }
        i = 0;
        frase = "";
        String news;
        while (i < parole.size()) {
            news = parole.get(i);
            frase = frase + news + " ";
            i++;
        }
        return frase;
    }

    public static void main(String[] args) {
        String frase = JOptionPane.showInputDialog("Inserire la frase da analizzare:");
        String parola = JOptionPane.showInputDialog("Inserire la parola da cambiare:");
        String replace = JOptionPane.showInputDialog("Inserire parola con cui sostituire: ");
        String cambio = replace(frase, parola, replace);
        JOptionPane.showMessageDialog(null, cambio);
    }
}
